1. Field of the Invention
The present invention relates to an Asynchronous Transfer Mode (ATM) switching system, and more particularly, to an apparatus and method for managing traffic of an ATM switching system, and to its method.
2. Background of the Related Art
An ATM switching system has a limited amount of bandwidth. Accordingly, only a predetermined amount of information per unit time can be transferred through a network. In order to allocate usable bandwidth in the network, a system provider and a system user should agree on a xe2x80x98traffic contractxe2x80x99 that defines xe2x80x98traffic parametersxe2x80x99, a source traffic descriptor, and a connection traffic descriptor at an initial stage of a system, that is, when a call is established.
Normally, traffic parameters are variables representing traffic characteristics of a terminal that generates traffic, which include four elements as shown in Table 1.
As used herein, xe2x80x98Txe2x80x99 indicates a maximum burst interval time.
The source traffic descriptor defines traffic characteristics of a terminal when a call is established, in order to satisfy a quality of service (QoS, i.e., delay, cell loss and throughput) of a cell to be established.
The source traffic descriptor is constructed using a combination of the traffic parameters and the cell delay variation tolerance (CDVT) of Table 1. FIGS. 1A and 1B respectively show constant bit rate (CBR) traffic parameters (PCR and CDVT), and variable bit rate (VBR) traffic parameters (PCR, CDVT, SCR and MBS).
The connection traffic descriptor represents traffic characteristics of an ATM connection, including the source traffic descriptor, CDVT, and elements defining a conformance of a cell.
When the ATM connection is made after the system provider and the user agree on the communication xe2x80x98traffic contract,xe2x80x99 a generic cell rate algorithm (GCRA) having a traffic policing function in a network interface determines whether input cells comply with the traffic contract. That is, it identifies whether the cells inputted from the terminal match the traffic parameters stipulated in the initial traffic contract, and then performs the operations of tagging, discarding, and monitoring depending on whether the cells break the contract or not.
The GCRA is implemented by a Virtual Scheduling Algorithm (VSA) or a Leaky Bucket Algorithm (LBA) described in a CCITT Recommendation 1.371 Document, Geneva 1999, and normally defined using an xe2x80x98Increment (I)xe2x80x99 parameter and a xe2x80x98Limit (L)xe2x80x99 parameter.
FIG. 2 illustrates a GCRA implemented by the VSA.
As shown in FIG. 2, when a cell is received in step S10, the VSA checks whether the arrival time ta(k) of kth cell is greater than a theoretical arrival time (TAT) in step S11. If the arrival time ta(k) of the cell is greater than the TAT, that is, if the cell arrives after the TAT, the VSA regards the corresponding cell as a conforming cell and updates the TAT to an added value of the arrival time ta(k) of the cell and an Increment (I) in steps S12 and S13. If, however, the arrival time Ta(k) of the kth cell is not greater than the TAT, that is, if the cell arrives before the theoretical arrival time TAT, the VSA determines whether the kth cell arrives beyond the Limit (L) value before the theoretical arrival time TAT, in step S14. Upon making that determination, if the kth cell arrives beyond the Limit (L), that is, the arrival time of the kth cell is smaller than the TAT-L, the VSA regards the corresponding cell as a non-conforming cell and does not modify the TAT in step S15.
FIG. 3 illustrates cell conformance checking by the VSA having an Increment (I=5) and a Limit (L=9).
In step S11 (FIG. 2), since the arrival time Ta(3)=11 of the third cell is greater than the TAT(3)=10, the VSA updates the TAT(3) of the third cell to xe2x80x9811xe2x80x99 rather than xe2x80x9810xe2x80x99 in step S12. The VSA then updates the TAT(4) of the fourth cell to xe2x80x9816xe2x80x99 by increasing by Increment (I=5) over the previous value in step S13.
Though arrival times ta(k) of the remaining cells, except for the seventh and the tenth cells, are not all greater than the TAT, since they are not smaller than the TAT in steps S11 and S14, the VSA regards the corresponding cells as conforming, and increases the TAT as much as the Increment (I=5) than before in the step S13.
In this respect, since the arrival times ta(7) and ta(10) of the seventh and the tenth cells are each smaller beyond the Limit (L=9) than the TAT(7) and the TAT(10) in steps S11 and S14, the VSA regards the seventh and the tenth cells as non-conforming cells and thus does not increase the TAT(7) and the TAT(10) in step S15.
FIG. 4 illustrates the GCRA implemented by LBA.
The Leaky Bucket Algorithm is a model in which a constant amount of traffic cells come in and go out, of which an input cell overflowing the bucket is tagged or discarded according to the resource environment of the system. Thus, if the content of the bucket is not overflowing, incoming cells are conforming. Otherwise, the cells are non-conforming.
Referring to FIG. 4, when the cell is received in step S20, the LBA first computes the temporary bucket counter value Xxe2x80x2 in step S21. The temporary bucket counter Xxe2x80x2 is defined as a value obtained by subtracting the arrival time ta(k) of the cell from an addition value (X+LCT) of a leaky bucket counter value X and a last compliance time (LCT) representing an input time of a last conforming cell, and the leaky bucket counter value X is decreased by 1 at every unit time.
After the temporary bucket counter value Xxe2x80x2 is computed, the LBA checks whether the computed temporary bucket counter value Xxe2x80x2 is smaller than xe2x80x980xe2x80x99 in step S22, and if the value Xxe2x80x2 is smaller than 0, the LBA sets the corresponding temporary bucket counter Xxe2x80x2 to 0 in step S23.
Accordingly, the LBA regards the input cell as a conforming cell and updates the leaky bucket counter value X to the sum of the temporary bucket counter Xxe2x80x2 and the Increment (I), and updates the LCT to the arrival time ta(k) of the cell in step S24.
If, however, the temporary bucket counter value Xxe2x80x2 is not smaller than 0 in step S22, the LBA checks whether the corresponding temporary bucket counter Xxe2x80x2 exceeds the Limit (L) of the bucket in step S25. If the temporary bucket counter Xxe2x80x2 exceeds the Limit (L) of the bucket, the LBA regards the input cell as a non-conforming cell, and does not modify the leaky bucket counter value X and the LCT in step S26. If, on the other hand, the temporary bucket counter Xxe2x80x2 does not exceed the Limit (L) of the bucket, it regards the input cell as a conforming cell and increases the bucket counter, as shown in step S24.
FIG. 5 illustrates cell conformance checking by the LBA using an Increment (I=5) and a Limit (L=9).
If the arrival time ta(2) of the second cell is 5, the temporary bucket counter value Xxe2x80x2 in the step S21 is xe2x88x925. That is, the temporary bucket counter value Xxe2x80x2 is determined by a value obtained by subtracting the difference (5xe2x88x920=5) of the LCT of the first cell and the arrival time ta(2) of the second cell, from the count value (X=0) of the leaky bucket counter of the first cell. In this respect, upon checking in step S22, since the temporary bucket counter (Xxe2x80x2 =xe2x88x925) is smaller than 0, the temporary bucket counter Xxe2x80x2 of the second cell in steps S23 and S24 is set as 0, and the leaky bucket counter value X and the LCT are respectively set as 5.
If the arrival time ta(3) of the third cell is 11, the temporary bucket counter Xxe2x80x2 in the step S21 is xe2x88x921. That is, the temporary bucket counter Xxe2x80x2 is determined by a value obtained by subtracting the difference (11xe2x88x925=6) of the LCT of the second cell and the arrival time ta(3) of the third cell, from the count value (X=5) of the leaky bucket counter of the second cell. In this respect, since the computed temporary bucket counter value (Xxe2x80x2 =xe2x88x921) is smaller than 0, the temporary bucket counter value Xxe2x80x2 of the third cell in the steps S23 and S24 is set as 0, and the leaky bucket counter value X is set as 5, while the LCT is set as 11. The LBA sequentially checks the conformance for the input cells in this manner.
In this example, the seventh cell arrives when ta(7)=21. The temporary bucket counter value Xxe2x80x2 in step S21 accordingly becomes 10. Since the temporary bucket counter value (Xxe2x80x2 =10) is greater than 0 in step S22 and is greater than the Limit (L=9) in step S25, the LBA tags or discards the seventh cell, and does not modify either the leaky bucket counter value X or the LCT in step S26. Thus, the leaky bucket counter value X and the LCT of the seventh cell is the same as the leaky bucket counter value X and the LCT of the sixth cell, respectively.
Recommendation 1.371 and the ATM Forum traffic Management 4.0 of the International Telecommunication Union-Telecommunication Standardization Sector (ITU-T), defining the traffic control and congestion control in a broad band-integrated service digital network (B-ISDN), defines the GCRA variables according to a peak cell rate (PCR) traffic parameter and a sustainable cell rate (SCR) traffic parameter, as shown in Table 2.
As shown here, the burst tolerance (BT) indicates a maximum time for processing a cell, which is represented as BT=(MSB-1)(1/SCR-1/PCR).
In order to define conformance of the CBR and the VBR connection, the ITU-T Recommendation 1.371 and the ATM Forum Traffic Management 4.0 define PCR, SCR, CDVT and BT, respectively. Here, a conformance for the traffic cell of a connected call is defined related to the traffic descriptor determined when the call is established.
However, in the conventional ATM switching system, various conformance definitions are not supported for the input ATM cell, resulting in failure to provide an effective traffic management function.
The above references are incorporated by reference herein where appropriate for appropriate teachings of additional or alternative details, features and/or technical background.
An object of the present invention is to provide an apparatus and/or method for managing ATM traffic which substantially overcomes one or more of the limitations and disadvantages caused by the problems with the conventional art.
Another object of the present invention is to provide an apparatus and method for managing traffic of an ATM switching system which is capable of effectively managing ATM traffic by supporting various conformance definitions for an ATM cell.
To achieve these and other advantages in whole or in parts and in accordance with the purpose of the present invention, as embodied and broadly described herein, there is provided an apparatus for managing traffic of an ATM switching system including: an input cell processing unit for separating an input ATM cell to a header part and a data part, a header queue for storing the header part separated in the input cell processing unit, a traffic control memory for storing an input coefficient value of an ATM cell and a traffic parameter contracted when a call was established, a traffic control unit for determining a conformance measurement type of the input ATM cell and comparing traffic information of the ATM cell in the determined conformance measurement type and the traffic parameter contracted when the call was established to discriminate a conformance of the cell, and a memory connection unit for accessing the traffic control memory, transferring the traffic information of the ATM cell to the traffic control unit, and storing a processing result of the traffic control unit in the traffic control memory.
In order to attain the above objects, there is also provided a method for managing traffic of an ATM switching system including the steps of: storing a traffic parameter as contracted when a call is established in a traffic control memory, separating an input ATM cell to a header part and a data part and storing them in a header queue and a data queue, reading a Virtual Path Identifier/Virtual Channel Identifier (VPI/VCI) field stored in the header queue and accessing a traffic management content (TMC) unit of the traffic control memory, and determining a predetermined conformance measurement type on the basis of a bit value of a conformance type field of the TMC unit and checking a conformance of the ATM cell according to the determined conformance measurement type.
To further achieve at least the above-described objects of the present invention in a whole or in parts, there is provided an asynchronous transfer mode (ATM) switching system that includes input circuit coupled to receive an ATM cell having a header part and a data part, an ATM control unit coupled to receive only the header part of the ATM cell and determine a conformance of the ATM cell based on information from the header part and a traffic parameter stored in the ATM control unit, and an output circuit coupled to receive and combine the output of the ATM header and cell data for conforming cells, and to discard the ATM data of non-conforming cells.
To further achieve at least the above-described objects of the present invention in a whole or in parts, there is provided a method for managing traffic of an Asynchronous Transfer Mode (ATM) switching system including the steps of separating a header part of an ATM cell, accessing a traffic control memory based on a first field of the header part to obtain a traffic management content (TMC), and determining a prescribed conformance measurement type on the basis of a field value of the TMC and ascertaining a conformance of the ATM cell based on the prescribed conformance measurement type.
Additional advantages, objects, and features of the invention will be set forth in part in the description which follows and in part will become apparent to those having ordinary skill in the art upon examination of the following or may be learned from practice of the invention. The objects and advantages of the invention may be realized and attained as particularly pointed out in the appended claims.